perm filename S.F4[2,LCS] blob sn#458330 filedate 1979-07-12 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	C≡≡≡≡≡≡ THIS IS THE REQUIRED HEADER FOR 'SCORE' SUBROUTINES. ≡≡≡≡≡≡≡
C00004 ENDMK
C⊗;
C≡≡≡≡≡≡ THIS IS THE REQUIRED HEADER FOR 'SCORE' SUBROUTINES. ≡≡≡≡≡≡≡
	SUBROUTINE SUBR
 	COMMON /P/P(1) /PL/PL(1) /INS/ INST(27),BG(60)
 	COMMON INUM,IPAR,CNT(27),BT,IREST,DF,DUR(27)
C   INUM=INST#  IPAR=PARAM#  
C   BT=BASIC TIME P1 WHEN SUBROUTINE IS CALLED
C   IF IREST IS <0, THAT NOTE WILL BE A REST.  
C   INST=INST. NAME,  BG=INSTS' BEGIN TIMES.
C   NOTE #S IN SUBROUTINE: (1-108)  C4=49  FS4=55  B4=60  C5=61  ETC.
C   F0=200  F99=299 (LIMIT IS F0-F99!)  'R'(REST)=199
	DATA OCT/12./

	IF(P(3).NE.K)GO TO 1
C K STORES PREVIOUS P3.  CALL THIS FROM P17 OR HIGHER PARAM.
C  IF REPEAT, THEN OCTAVE JUMP, UP OR DOWN.
C ALSO DUTY FACTOR CHANGE.
	P(3)=P(3)+OCT
	DF=10
	P(17)=1
C ALSO INSERTS GLIS.
	P(18)=P(3)-24.
1	K=P(3)
	J=-J
	RETURN
	END
 
C TYPICAL INPUT
C PRECEDE;
C FUNC EXAMP.FUN[INS,MUS];
C COMMON TOOT,CLAR;
C *
C 
C REVRB 0 0 1;
C  P2 12;
C END;
C 
C TOOT 0 10;
C P2 RHY/16;			< quarter note, 2 eighths, half
C P3 1 C4 E;
C P4 .7;					< maximum amplitude
C P5 F1;					< amplitude function
C P6 F6;					< waveform ("SYNTH") function
C P7 .05;					< percentage (0 ↔ 1) of reverberation
C P17 SUBR 0;
C P19 F4;
C END;
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002		IF(P(3).NE.K)GO TO 1
C00004 ENDMK
C⊗;
	IF(P(3).NE.K)GO TO 1
C K STORES PREVIOUS P3.  CALL THIS FROM P18 OR HIGHER PARAM.
C  IF REPEAT, THEN OCTAVE JUMP.
C ALSO DUTY FACTOR CHANGE.
	P(3)=P(3)+12.0
	DF=10
	P(17)=1
C ALSO INSERTS GLIS.
	P(18)=P(3)-24.
1	K=P(3)
	RETURN
	END